import { Course } from '../entity/Course'
import DateUtil from "../utils/DateUtil"
import { ToDo } from '../entity/ToDo';
import { Notice } from '../entity/Notice';

export default class Constants {

  //课表时间
  static readonly courseTime: Array<string> = [
    "08:00\n08:45",
    "08:55\n09:40",
    "10:00\n10:45",
    "10:55\n11:40",
    "14:30\n15:15",
    "15:25\n16:10",
    "16:30\n17:15",
    "17:25\n18:10",
    "19:30\n20:15",
    "20:25\n21:10"
  ];

  //一周的字符列表
  static readonly dayList: Array<string> = ['一','二','三','四','五','六','日'];

  //加”周“字的一周字符列表
  static readonly dayListFull: Array<string> = ['周一','周二','周三','周四','周五','周六','周日'];

  //课程节数列表
  static readonly jieList: Array<string> = [
    '第1节','第2节','第3节','第4节','第5节','第6节','第7节',"第8节","第9节","第10节"
  ];

  //虚拟课程数据
  static readonly courseList:Array<Course> = [
    new Course(1,"计算机组成原理","张华","#F08080","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周一 第3-4节","","三教301"),
    new Course(2,"网络系统管理","梁文静","#73DECF","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周一 第7-8节","","三教103"),
    new Course(3,"大学语文","李恒华","#FFB6C1","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周一 第9-10节","","三教301"),
    new Course(4,"软件工程A","志俊","#7CB9F1","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周二 第1-2节","","一教309"),
    new Course(5,"算法分析与设计A","王利","#FFB6C1","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周二 第5-6节","","三教106"),
    new Course(6,"计算机与网络A","李勇","#B8A6F4","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周二 第7-8节","","三教301"),
    new Course(7,"科技文献检索","赵明","#FFA500","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周二 第9-10节","","三教306"),
    new Course(8,"计算机组成原理","张华","#F08080","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周三 第3-4节","","三教301"),
    new Course(9,"计网实验","李勇","#E97998","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周三 第7-8节","","三教301"),
    new Course(10,"形势与政策","王华","#B8A6F4","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周四 第1-2节","","三教103"),
    new Course(11,"软件工程A","志俊","#7CB9F1","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周四 第3-4节","","一教303"),
    new Course(12,"网络系统管理","梁文静","#73DECF","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周五 第1-2节","","三教103"),
    new Course(13,"算法分析与设计A","王利","#FFB6C1","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周五 第3-4节","","三教106"),
    new Course(14,"计算机与网络A","李勇","#B8A6F4","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周五 第5-6节","","三教301"),
    new Course(15,"数字图像处理","黄伟","#00BFFF","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周五 第7-8节","","三教308"),
    new Course(16,"数字图像处理","黄伟","#00BFFF","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周日 第1-2节","","四教402"),
  ];

  //虚拟待办事项数据
  static readonly managerList:Array<ToDo> = [
    new ToDo('背英语单词','#FFEC7F'),
    new ToDo('完成数据结构作业','#CFFFDF'),
    new ToDo('完成操作系统作业','#FFEC7F'),
    new ToDo('清洗脏衣物','#BCEBFF'),
  ];

  //服务卡片虚拟课程数据
  static readonly courseFormList:Array<Course> = [
    new Course(1,"计算机组成原理","李波","#F08080","4","1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周一 第1-2节","","三教301"),
    new Course(2,"计算机操作系统","李波","#7CB9F1","4","1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周一 第1-2节","","三教301"),
    new Course(3,"毛概","刘楠","#FFA500","4","1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","周一 第1-2节","","三教301")
  ];

  //服务卡片任务列表数据
  static readonly managerFormList:Array<ToDo> = [
     new ToDo('给同事发文件',"#F08080"),
     new ToDo('记得取快递',"#BCEBFF"),
     new ToDo('背诵英语单词',"#CFFFDF")
  ];

  //通知方式数据
  static readonly noticeTypeList:Array<Notice> = [
    new Notice('通知栏通知',true),
    new Notice('锁屏通知',true),
    new Notice('横幅通知',true),
    new Notice('桌面角标图标',true),
    new Notice('通知图标',true),
  ];

  //虚拟课表周数时间
  static readonly weekNumber:number = 20;

  //课程颜色列表
  static readonly CourseColorList:string[] = [
    "#F08080","#FFA500","#E97998","#7CB9F1",
    "#73DECF","#00BFFF","#B8A6F4", "#FFB6C1",
  ]

  //任务颜色列表
  static readonly ManageColorList:string[] = [
    "#FFEC7F","#BCEBFF","#CFFFDF"
  ]

  //课程表表名
  static readonly COURSETABLE_NAME:string = "COURSE";

  //待办任务表名
  static readonly MANAGERTABLE_NAME:string = "MANAGER";

  static readonly PREFERENCES_NAME:string = "course.db";

  static readonly firstDay:string = DateUtil.formatDate();

  static readonly semesterIndex:string = "1";

  static readonly semesterWeeks:string = "20";

}